﻿using System;
namespace Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg {
    
    
    public partial class MajandusaastaAruanne : global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IMajandusaastaAruanne {
        
        private string @__aruandeKood;
        
        private string @__aruandeNimetus;
        
        private System.Int32? @__aruandeAasta;
        
        private System.DateTime? @__majandusaastaAlgus;
        
        private System.DateTime? @__majandusaastaLopp;
        
        public MajandusaastaAruanne() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public MajandusaastaAruanne(string @aruandeKood, string @aruandeNimetus, System.Int32? @aruandeAasta, System.DateTime? @majandusaastaAlgus, System.DateTime? @majandusaastaLopp) {
            this.@__aruandeKood = @aruandeKood;
            this.@__aruandeNimetus = @aruandeNimetus;
            this.@__aruandeAasta = @aruandeAasta;
            this.@__majandusaastaAlgus = @majandusaastaAlgus;
            this.@__majandusaastaLopp = @majandusaastaLopp;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected MajandusaastaAruanne(IMajandusaastaAruanne @majandusaastaAruanne) {
            this.@__aruandeKood = @majandusaastaAruanne.AruandeKood;
            this.@__aruandeNimetus = @majandusaastaAruanne.AruandeNimetus;
            this.@__aruandeAasta = @majandusaastaAruanne.AruandeAasta;
            this.@__majandusaastaAlgus = @majandusaastaAruanne.MajandusaastaAlgus;
            this.@__majandusaastaLopp = @majandusaastaAruanne.MajandusaastaLopp;
        }
        
        public virtual string AruandeKood {
            get {
                return this.@__aruandeKood;
            }
            set {
                this.@__aruandeKood = value;
            }
        }
        
        public virtual string AruandeNimetus {
            get {
                return this.@__aruandeNimetus;
            }
            set {
                this.@__aruandeNimetus = value;
            }
        }
        
        public virtual System.Int32? AruandeAasta {
            get {
                return this.@__aruandeAasta;
            }
            set {
                this.@__aruandeAasta = value;
            }
        }
        
        public virtual System.DateTime? MajandusaastaAlgus {
            get {
                return this.@__majandusaastaAlgus;
            }
            set {
                this.@__majandusaastaAlgus = value;
            }
        }
        
        public virtual System.DateTime? MajandusaastaLopp {
            get {
                return this.@__majandusaastaLopp;
            }
            set {
                this.@__majandusaastaLopp = value;
            }
        }
    }
}
